#include "main.h"
//#include "delay.h"
//#include <stdint.h>

 uint8_t seg_table[10] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
void LED_Get(int8_t show_data, int8_t n)
{
	int8_t i, j;
//	for(i = 0; i < 4; i++)
//	{
			HAL_GPIO_WritePin(HC138_A2_GPIO_Port, HC138_A2_Pin, 0);
			HAL_GPIO_WritePin(HC138_A1_GPIO_Port, HC138_A1_Pin, 0);
			HAL_GPIO_WritePin(HC138_A0_GPIO_Port, HC138_A0_Pin, 0);

		HAL_GPIO_WritePin( HC595_LCLK_GPIO_Port, HC595_LCLK_Pin, GPIO_PIN_RESET);
		for(j = 7; j >= 0; j--)
		{
			HAL_GPIO_WritePin( HC595_SCLK_GPIO_Port, HC595_SCLK_Pin, GPIO_PIN_RESET);
			if((seg_table[show_data] >> j) & 1)
				HAL_GPIO_WritePin( HC595_DATA_GPIO_Port, HC595_DATA_Pin, GPIO_PIN_SET);
			else
				HAL_GPIO_WritePin( HC595_DATA_GPIO_Port, HC595_DATA_Pin, GPIO_PIN_RESET);
			//Delay_US(100);
			HAL_GPIO_WritePin( HC595_SCLK_GPIO_Port, HC595_SCLK_Pin, GPIO_PIN_SET);
			//Delay_US(200);
		}
		HAL_GPIO_WritePin( HC595_LCLK_GPIO_Port, HC595_LCLK_Pin, GPIO_PIN_SET);
		

			HAL_GPIO_WritePin(HC138_A2_GPIO_Port, HC138_A2_Pin, (n >> 2) & 1);
			HAL_GPIO_WritePin(HC138_A1_GPIO_Port, HC138_A1_Pin, (n >> 1) & 1);
			HAL_GPIO_WritePin(HC138_A0_GPIO_Port, HC138_A0_Pin, n & 1);
//		HAL_GPIO_WritePin(GPIOC, GPIO_PIN_7, GPIO_PIN_SET);
			//Delay_US(100);
				
//	}
}
